package browser

import (
	"github.com/MzoroHaHa/dev-tools/backend/app/browser/chrome"
	"github.com/MzoroHaHa/dev-tools/backend/app/logger"
	"strings"
)

var _browser *chrome.Browser
var StartError string

var browserMainLogger = logger.NewLogger("browser-main")

func RunChrome() {
	browser, err := chrome.NewBrowser()
	if err != nil {
		StartError = err.Error()
		browserMainLogger.Error("Chrome init ", "error", err)
	}
	_browser = browser
}

func CloseChrome() {
	if _browser != nil {
		_browser.Close()
	}
}

// GetBrowserArgs 浏览器启动参数
func GetBrowserArgs() string {
	if _browser == nil {
		return ""
	}
	_chromeArgs := _browser.GetArgs()
	if _chromeArgs == nil || len(_chromeArgs) == 0 {
		return ""
	}
	return strings.Join(_chromeArgs, " ")
}

func GetActivePageUrl() string {
	if _browser == nil {
		return ""
	}
	return _browser.GetActiveTargetUrl()
}
